

/**
 * js关于金额格式化
 * Copyright (c) 2019 zh-cloud
 */

//添加千分位，
export function priceFormat(num,n){  
    n = n || 2;
    let symbol = ",";
  if (num === null) return num;
  if(typeof num!=='number')throw new TypeError('num参数应该是一个number类型');
  if(n<0)throw new Error('参数n不应该小于0');
  let hasDot=parseInt(num)!=num;//这里检测num是否为小数，true表示小数
  let m = (n!=undefined&&n!=null)?n:1;
  num = m == 0?num.toFixed(m)+'.':hasDot?(n?num.toFixed(n):num):num.toFixed(m);
  symbol = symbol||',';
  num = num.toString().replace(/(\d)(?=(\d{3})+\.)/g,function(match, p1,p2) {
      return p1 + symbol;
  });
  if(n==0||(!hasDot&&!n)){//如果n为0或者传入的num是整数并且没有指定整数的保留位数，则去掉前面操作中的小数位
      num =  num.substring(0,num.indexOf('.'));
  }
  return num;
}

//去除千分位中的‘，’
export function delcommafy (num){
    if(!num) return num;
    num = num.toString();
    num = num.replace(/,/gi, '');
    return num;
}

//获取精度
export function getDigit(data, digit) {
    return data!== undefined && toString(data).indexOf('.')>0?data.slice(0,toString(data).indexOf('.')+ (digit + 1)):data
}

  